package def.dom;

import def.js.Object;
import jsweet.util.StringTypes;
import jsweet.util.StringTypes.DeviceMotionEvent;
import jsweet.util.StringTypes.DeviceOrientationEvent;
import jsweet.util.StringTypes.DragEvent;
import jsweet.util.StringTypes.ErrorEvent;
import jsweet.util.StringTypes.Event;
import jsweet.util.StringTypes.Events;
import jsweet.util.StringTypes.FocusEvent;
import jsweet.util.StringTypes.LongRunningScriptDetectedEvent;
import jsweet.util.StringTypes.MessageEvent;
import jsweet.util.StringTypes.MouseEvents;
import jsweet.util.StringTypes.MouseWheelEvent;
import jsweet.util.StringTypes.MutationEvent;
import jsweet.util.StringTypes.MutationEvents;
import jsweet.util.StringTypes.NavigationEventWithReferrer;
import jsweet.util.StringTypes.OfflineAudioCompletionEvent;
import jsweet.util.StringTypes.PageTransitionEvent;
import jsweet.util.StringTypes.PopStateEvent;
import jsweet.util.StringTypes.SVGZoomEvents;
import jsweet.util.StringTypes.StorageEvent;
import jsweet.util.StringTypes.TransitionEvent;
import jsweet.util.StringTypes.UIEvents;
import jsweet.util.StringTypes.WebGLContextEvent;

@jsweet.lang.Interface
public abstract class DocumentEvent extends def.js.Object {
    native public AnimationEvent createEvent(jsweet.util.StringTypes.AnimationEvent eventInterface);
    native public AriaRequestEvent createEvent(jsweet.util.StringTypes.AriaRequestEvent eventInterface);
    native public AudioProcessingEvent createEvent(jsweet.util.StringTypes.AudioProcessingEvent eventInterface);
    native public BeforeUnloadEvent createEvent(jsweet.util.StringTypes.BeforeUnloadEvent eventInterface);
    native public ClipboardEvent createEvent(jsweet.util.StringTypes.ClipboardEvent eventInterface);
    native public CloseEvent createEvent(jsweet.util.StringTypes.CloseEvent eventInterface);
    native public CommandEvent createEvent(jsweet.util.StringTypes.CommandEvent eventInterface);
    native public CompositionEvent createEvent(jsweet.util.StringTypes.CompositionEvent eventInterface);
    native public CustomEvent createEvent(jsweet.util.StringTypes.CustomEvent eventInterface);
    native public DeviceMotionEvent createEvent(jsweet.util.StringTypes.DeviceMotionEvent eventInterface);
    native public DeviceOrientationEvent createEvent(jsweet.util.StringTypes.DeviceOrientationEvent eventInterface);
    native public DragEvent createEvent(jsweet.util.StringTypes.DragEvent eventInterface);
    native public ErrorEvent createEvent(jsweet.util.StringTypes.ErrorEvent eventInterface);
    native public Event createEvent(jsweet.util.StringTypes.Event eventInterface);
    native public Event createEvent(jsweet.util.StringTypes.Events eventInterface);
    native public FocusEvent createEvent(jsweet.util.StringTypes.FocusEvent eventInterface);
    native public GamepadEvent createEvent(jsweet.util.StringTypes.GamepadEvent eventInterface);
    native public HashChangeEvent createEvent(jsweet.util.StringTypes.HashChangeEvent eventInterface);
    native public IDBVersionChangeEvent createEvent(jsweet.util.StringTypes.IDBVersionChangeEvent eventInterface);
    native public KeyboardEvent createEvent(jsweet.util.StringTypes.KeyboardEvent eventInterface);
    native public LongRunningScriptDetectedEvent createEvent(jsweet.util.StringTypes.LongRunningScriptDetectedEvent eventInterface);
    native public MSGestureEvent createEvent(jsweet.util.StringTypes.MSGestureEvent eventInterface);
    native public MSManipulationEvent createEvent(jsweet.util.StringTypes.MSManipulationEvent eventInterface);
    native public MSMediaKeyMessageEvent createEvent(jsweet.util.StringTypes.MSMediaKeyMessageEvent eventInterface);
    native public MSMediaKeyNeededEvent createEvent(jsweet.util.StringTypes.MSMediaKeyNeededEvent eventInterface);
    native public MSPointerEvent createEvent(jsweet.util.StringTypes.MSPointerEvent eventInterface);
    native public MSSiteModeEvent createEvent(jsweet.util.StringTypes.MSSiteModeEvent eventInterface);
    native public MessageEvent createEvent(jsweet.util.StringTypes.MessageEvent eventInterface);
    native public MouseEvent createEvent(jsweet.util.StringTypes.MouseEvent eventInterface);
    native public MouseEvent createEvent(jsweet.util.StringTypes.MouseEvents eventInterface);
    native public MouseWheelEvent createEvent(jsweet.util.StringTypes.MouseWheelEvent eventInterface);
    native public MutationEvent createEvent(jsweet.util.StringTypes.MutationEvent eventInterface);
    native public MutationEvent createEvent(jsweet.util.StringTypes.MutationEvents eventInterface);
    native public NavigationCompletedEvent createEvent(jsweet.util.StringTypes.NavigationCompletedEvent eventInterface);
    native public NavigationEvent createEvent(jsweet.util.StringTypes.NavigationEvent eventInterface);
    native public NavigationEventWithReferrer createEvent(jsweet.util.StringTypes.NavigationEventWithReferrer eventInterface);
    native public OfflineAudioCompletionEvent createEvent(jsweet.util.StringTypes.OfflineAudioCompletionEvent eventInterface);
    native public PageTransitionEvent createEvent(jsweet.util.StringTypes.PageTransitionEvent eventInterface);
    native public PermissionRequestedEvent createEvent(jsweet.util.StringTypes.PermissionRequestedEvent eventInterface);
    native public PointerEvent createEvent(jsweet.util.StringTypes.PointerEvent eventInterface);
    native public PopStateEvent createEvent(jsweet.util.StringTypes.PopStateEvent eventInterface);
    native public ProgressEvent createEvent(jsweet.util.StringTypes.ProgressEvent eventInterface);
    native public SVGZoomEvent createEvent(jsweet.util.StringTypes.SVGZoomEvent eventInterface);
    native public SVGZoomEvent createEvent(jsweet.util.StringTypes.SVGZoomEvents eventInterface);
    native public ScriptNotifyEvent createEvent(jsweet.util.StringTypes.ScriptNotifyEvent eventInterface);
    native public StorageEvent createEvent(jsweet.util.StringTypes.StorageEvent eventInterface);
    native public TextEvent createEvent(jsweet.util.StringTypes.TextEvent eventInterface);
    native public TouchEvent createEvent(jsweet.util.StringTypes.TouchEvent eventInterface);
    native public TrackEvent createEvent(jsweet.util.StringTypes.TrackEvent eventInterface);
    native public TransitionEvent createEvent(jsweet.util.StringTypes.TransitionEvent eventInterface);
    native public UIEvent createEvent(jsweet.util.StringTypes.UIEvent eventInterface);
    native public UIEvent createEvent(jsweet.util.StringTypes.UIEvents eventInterface);
    native public UnviewableContentIdentifiedEvent createEvent(jsweet.util.StringTypes.UnviewableContentIdentifiedEvent eventInterface);
    native public WebGLContextEvent createEvent(jsweet.util.StringTypes.WebGLContextEvent eventInterface);
    native public WheelEvent createEvent(jsweet.util.StringTypes.WheelEvent eventInterface);
    native public Event createEvent(java.lang.String eventInterface);
}

